// pages/login/login.js
import {hideLoading, msg, navBack, showLoading} from "@/utils/util"
Page({

  data: {
    agree: false, //是否同意协议
    member: null, // 会员信息
    boundMobile: false, // 是否绑定手机号，true绑定了快速登录，false未绑定获取用户手机登录
  },

  onLoad() {
    this.preLogin()
  },

  // 预登录
  async preLogin() {
    try {
      showLoading()
      // 调用预登录云函数
      const { result: member } = await wx.cloud.callFunction({
          name: 'preLogin'
      })  
      console.log('result', member)

      // 判断是否绑定了手机号，
      const boundMobile = !!(member && member.mobile)
      console.log('boundMobile', boundMobile)

      this.setData({
          member,
          boundMobile
      })
    } catch (error) {
        console.error('预登录异常', error)
    } finally {
      hideLoading()
    }
  },

  // 判定是否勾选了按钮，没有的话 提示下面内容
  loginCheck() {
    if( !this.data.agree )
      return msg('请阅读并勾选下方协议')
  },


  // 快速登录
  loginQuick() {
    // console.log('loginQuick')
    try {
        showLoading()
        const { boundMobile } = this.data
        // 如果未绑定，则结束
        if (!boundMobile) return
        // 已绑定：保存会员信息到本地storage中，表示登录成功
        this.loginSuccess()
    } catch (error) {
        msg('登录失败')
        console.error('快速登录异常', error)
    } finally {
        hideLoading()
    }
  },

 /**
   * 登录成功，保存会员信息到本地
   */
  loginSuccess() {
    // 保存会员信息到本地
    getApp().storageMember(this.data.member)
    msg('登录成功', {icon: 'success'})
    navBack() // 后退 返回到上一页
  },



  loginGetPhoneNumber(e) {
    console.log('loginGetPhoneNumber', e)
  }


})